hexo搭建和备份记录

记录了

  • hexo 方案 & 重新搭建的步骤
  • hexo 碰到的坑

方案

  • 备份
    • 目前仅备份了source的内容
    • 原因是全量备份,down下来没法用
  • 目前使用的css是next,简单简洁,地址是:

部署

on windows

on mac

on mac的感觉比在windows上麻烦。。。T^T

前提条件

  • 会配置git&已经安装
  • homebrew installed

安装

  • 安装node.js
    • brew install node
  • 安装hexo
    • sudo npm install -g hexo
    • 这里要使用sudo,否则安装可能有权限问题

PS:安装hexo的过程可能出现error

{ Error: Cannot find module './build/Release/DTraceProviderBindings'
{ Error: Cannot find module './build/default/DTraceProviderBindings'
{ Error: Cannot find module './build/Debug/DTraceProviderBindings'

修复的方式呢,尝试如下:

$ npm install hexo --no-optional
#if it doesn't work
#try
$ npm uninstall hexo-cli -g
$ npm install hexo-cli -g

common部分咯

  • 初始化hexo
    • hexo init 文件夹名称
    • cd 文件夹
    • npm install
  • git clone source 到 source文件夹
  • 修改配置

    • 语言:配置为language: zh-Hans
      • 简体中文
    • deploy

      1
      2
      3
      4
      deploy:
      repository: git@github.com:toutoudnf/toutoudnf.github.io.git
      type: git
      branch: master

碰到的坑

tags和categories未生成

  • 目前发现的问题是tags下的index.md中缺少type: "tags"这个配置
  • 详情可以参考这个知乎问题

tags和categories一点击,http变https

  • 临时修复方案是在next的_config.yml中写死https的路径,坏处是在本地没法玩了
  • 目前新版本的next貌似没遇到这个问题
  • 具体可关注issues

hexo在本地启动,无法访问

通常来讲是默认4000端口被占用了,可以:

  • windows下
    • netstat -ano|findstr 4000查看pid
    • tasklist|findstr pid查看具体进程

碰到的是foxitProtect,taskmgr干掉即可。

mac hexo 报错,缺少xx module

一般是安装的时候少安了东西:戳这里

常用的language配置项

语言    对应值
English    en
简体中文    zh-Hans
法语    fr-FR
繁体中文    zh-hk/zh-tw
俄语    ru
德语    de
葡萄牙语    pt
日语    ja

NEXT常用配置

戳这里

配置了github的deploy但是失败了

  • hexo v3.0+,github要改为git
  • 还不行的话,执行npm install hexo-deployer-git --save,会安装上git的deployer